package br.com.eventime.entity;

import java.io.Serializable;
import javax.persistence.*;

import java.util.Date;


/**
 * The persistent class for the grupos_menus database table.
 * 
 */
@Entity
@Table(name="grupos_menus")
@NamedQueries(@NamedQuery(name="GruposMenus.findGruposAtivos",query="SELECT gm FROM GruposMenus AS gm WHERE gm.situacao = 'A' AND gm.grupo.codigo IN (:grupos)"))

public class GruposMenus implements Serializable {
	private static final long serialVersionUID = 2L;

	@EmbeddedId
	private GruposMenusPK id;

    @Temporal( TemporalType.DATE)
	@Column(name="data_alteracao")
	private Date dataAlteracao;

    @Temporal( TemporalType.DATE)
	@Column(name="data_inclusao")
	private Date dataInclusao;

	private String situacao;

	@Column(name="usuario_alteracao")
	private Integer usuarioAlteracao;

	@Column(name="usuario_inclusao")
	private Integer usuarioInclusao;

	//bi-directional many-to-one association to Grupo
    @ManyToOne
	@JoinColumn(name="grupo",insertable=false,updatable=false)
	private Grupo grupo;

	//uni-directional many-to-one association to Menus
    @ManyToOne
	@JoinColumn(name="menu",insertable=false,updatable=false)
	private Menus menus;

    public GruposMenus() {
    }

	public GruposMenusPK getId() {
		return this.id;
	}

	public void setId(GruposMenusPK id) {
		this.id = id;
	}
	
	public Date getDataAlteracao() {
		return this.dataAlteracao;
	}

	public void setDataAlteracao(Date dataAlteracao) {
		this.dataAlteracao = dataAlteracao;
	}

	public Date getDataInclusao() {
		return this.dataInclusao;
	}

	public void setDataInclusao(Date dataInclusao) {
		this.dataInclusao = dataInclusao;
	}

	public String getSituacao() {
		return this.situacao;
	}

	public void setSituacao(String situacao) {
		this.situacao = situacao;
	}

	public Integer getUsuarioAlteracao() {
		return this.usuarioAlteracao;
	}

	public void setUsuarioAlteracao(Integer usuarioAlteracao) {
		this.usuarioAlteracao = usuarioAlteracao;
	}

	public Integer getUsuarioInclusao() {
		return this.usuarioInclusao;
	}

	public void setUsuarioInclusao(Integer usuarioInclusao) {
		this.usuarioInclusao = usuarioInclusao;
	}

	public Grupo getGrupo() {
		return this.grupo;
	}

	public void setGrupo(Grupo grupo) {
		this.grupo = grupo;
	}
	
	public Menus getMenus() {
		return this.menus;
	}

	public void setMenus(Menus menus) {
		this.menus = menus;
	}
	
}